// #ifndef VUE3
import Vue from 'vue'
import App from './App'

//  导入 store 的实例对象
import store from './store/store.js'

//导入网络请求的包
import {
  $http
} from '@escook/request-miniprogram'

uni.$http = $http

//请求的根路径
$http.baseUrl = 'https://api-hmugo-web.itheima.net'

//请求拦截器
$http.beforeRequest = function(options) {
  uni.showLoading({
    title: '请稍后~~~',
    mask: true
  })
  // 判断请求的是否为有权限的 API 接口
  if (options.url.indexOf('/my/') !== -1) {
    // 为请求头添加身份认证字段
    options.header = {
      // 字段的值可以直接从 vuex 中进行获取
      Authorization: store.state.m_user.token,
    }
  }
}


//响应拦截器
$http.afterRequest = function(options) {
  uni.hideLoading()
}

//封装弹窗的方法
uni.$showMsg = (title = '数据请求失败', duration = 2000) => {
  //弹出小窗口 title：弹出的内容 duration：窗口弹出存在的时间 icon:展示的图标
  uni.showToast({
    title,
    duration,
    icon: 'success'
  })
}

Vue.config.productionTip = false

App.mpType = 'app'

const app = new Vue({
  ...App,
  // 2. 将 store 挂载到 Vue 实例上
  store,
})
app.$mount()
// #endif

// #ifdef VUE3
// import { createSSRApp } from 'vue'
// import App from './App.vue'
// export function createApp() {
//   const app = createSSRApp(App)
//   return {
//     app
//   }
// }
// #endif
